#ifndef __EXERCISE_H
#define __EXERCISE_H

#include "device.h"
const int POWER_CHOOSE = 1;
const int AEROBIC_CHOOSE = 2;
const int ALL_CHOOSE = 0;

class Exercise
{
private:
	const Device& device;
public:
	Exercise(const Device& d);

	const Device& getDevice() const {return device;}

    friend ostream & operator<<(ostream & os,const Exercise & E); //#WD[2] RonnyR 3.12

	virtual void PrintExercise(ostream &os,int type)const=0;

	virtual Exercise * Clone() const=0;
};

#endif // __EXERCISE_H